<body>
<script src="full-screen-test.js"></script>
<style>
    :-webkit-full-screen { background: lime; }
    :-webkit-full-screen-ancestor { color: blue; }
    :root:-webkit-full-screen-ancestor { background: red; }
</style>
<span></span>
<script>
    var callback;
    var fullscreenChanged = function(event)
    {
        if (callback)
            callback(event)
    };
    waitForEvent(document, "webkitfullscreenchange", fullscreenChanged);

    var span = document.getElementsByTagName("span")[0];

    testExpected("document.defaultView.getComputedStyle(span, null).getPropertyValue('background-color')", "rgba(0, 0, 0, 0)");
    testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('background-color')", "rgba(0, 0, 0, 0)");
    testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('color')", "rgb(0, 0, 0)");

    var documentEnteredFullScreen = function(event) {
        testExpected("document.webkitCurrentFullScreenElement", document.documentElement);
        testExpected("document.defaultView.getComputedStyle(span, null).getPropertyValue('background-color')", "rgba(0, 0, 0, 0)");
        testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('background-color')", "rgb(0, 255, 0)");
        testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('color')", "rgb(0, 0, 0)");
        callback = spanEnteredFullScreen;
        runWithKeyDown(function(){span.webkitRequestFullScreen()});
    };

     var spanEnteredFullScreen = function(event) {
        testExpected("document.webkitCurrentFullScreenElement", span);
        testExpected("document.defaultView.getComputedStyle(span, null).getPropertyValue('background-color')", "rgb(0, 255, 0)");
        testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('background-color')", "rgb(255, 0, 0)");
        testExpected("document.defaultView.getComputedStyle(document.documentElement, null).getPropertyValue('color')", "rgb(0, 0, 255)");
        endTest();
    };

    callback = documentEnteredFullScreen;
    runWithKeyDown(function(){document.documentElement.webkitRequestFullScreen()});
</script>
